5751
6378
Ist es möglich, die Sichtbarkeit eines Elements mit den Funktionen .hide (), .show () oder .toggle () umzuschalten?
Wie würden Sie testen, ob ein Element sichtbar oder verborgen ist? 
1
2
Nächster
Da sich die Frage auf ein einzelnes Element bezieht, ist dieser Code möglicherweise besser geeignet:
// Überprüft den CSS-Inhalt auf Anzeige: [none | block], ignoriert die Sichtbarkeit: [true | false]
$ (Element) .is (": sichtbar");
// Das gleiche funktioniert mit versteckt
$ (Element) .is (": hidden");
Es ist dasselbe wie der Vorschlag von twernt, wird jedoch auf ein einzelnes Element angewendet. und es entspricht dem in den jQuery-FAQ empfohlenen Algorithmus.
Wir verwenden jQuery's is (), um das ausgewählte Element mit einem anderen Element, Selektor oder einem beliebigen jQuery-Objekt zu überprüfen. Diese Methode durchläuft die DOM-Elemente, um eine Übereinstimmung zu finden, die den übergebenen Parameter erfüllt. Es wird true zurückgegeben, wenn eine Übereinstimmung vorliegt, andernfalls false.
|
Sie können den versteckten Selektor verwenden:
// Entspricht allen versteckten Elementen
$ ('Element: versteckt')
Und der sichtbare Selektor:
// Entspricht allen sichtbaren Elementen
$ ('Element: sichtbar')
|
if ($ (Element) .css ('Anzeige') == 'keine' || $ (Element) .css ("Sichtbarkeit") == "versteckt") {
// 'Element' ist versteckt
}}
Die obige Methode berücksichtigt nicht die Sichtbarkeit des übergeordneten Elements. Um auch das übergeordnete Element zu berücksichtigen, sollten Sie .is (": hidden") oder .is (": visible") verwenden.
Zum Beispiel,